package com.scs.application.modules.finance.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.scs.application.core.entity.DataEntity;
import com.scs.application.modules.upgrade.db.annotation.EntityClassAnnotation;
import com.scs.application.modules.upgrade.db.annotation.EntityFieldAnnotation;
import com.scs.application.modules.upgrade.db.annotation.EntityIndexAnnotation;
import com.scs.application.modules.upgrade.db.enums.EntityFieldType;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * <p>
 *
 * </p>
 */
@Data
@Accessors(chain = true)
@TableName("finance_third_party")
@EntityIndexAnnotation(ux = {"auto_id"},ix={"hrp_key"})
@EntityClassAnnotation(remark = "HRP出入库明细")
public class ThirdParty extends DataEntity {


    // id ,在父类中处理



    @EntityFieldAnnotation(
            text = "",
            length = "50",
            not_null = false,
            default_value = "",
            comment = "耗材HRP编码"
    )
    private String invCode;

    @EntityFieldAnnotation(
            text = "科室ID",
            type = EntityFieldType.LONG,
            length = "",
            not_null = false,
            default_value = "",
            comment = "科室"
    )
    private String deptId;

    @EntityFieldAnnotation(
            text = "科室名称",
            length = "50",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String deptName;

    @EntityFieldAnnotation(
            text = "HIS科室编码",
            length = "30",
            not_null = false,
            default_value = "",
            comment = "HIS科室编码"
    )
    private String hisCode;

    @EntityFieldAnnotation(
            text = "HRP科室编码",
            length = "30",
            not_null = false,
            default_value = "",
            comment = "HRP科室编码"
    )
    private String hrpCode;


    @EntityFieldAnnotation(
            text = "",
            length = "30",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String barcode;

    @EntityFieldAnnotation(
            text = "",
            length = "30",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String sn;

    @EntityFieldAnnotation(
            text = "HRP单号",
            length = "20",
            not_null = true,
            default_value = "",
            comment = ""
    )
    private String hrpKey;


    @EntityFieldAnnotation(
            text = "单品数量",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double skuQty;


    @EntityFieldAnnotation(
            text = "单价",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Double price;

    @EntityFieldAnnotation(
            text = "参考ID",
            type = EntityFieldType.LONG,
            length = "",
            not_null = false,
            default_value = "",
            comment = "来源ID"
    )
    private String autoId;

    @EntityFieldAnnotation(
            text = "HRP日期",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Date busDate;


    @EntityFieldAnnotation(
            text = "手术日期",
            length = "",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private Date oprtDate;


    @EntityFieldAnnotation(
            text = "批次",
            length = "100",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String lot;


    @EntityFieldAnnotation(
            text = "患者姓名",
            length = "50",
            type = EntityFieldType.STRING,
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String patientName;

    @EntityFieldAnnotation(
            text = "床位号",
            length = "50",
            type = EntityFieldType.STRING,
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String bedNo;

    @EntityFieldAnnotation(
            text = "住院编号",
            length = "100",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String patientNo;


    @EntityFieldAnnotation(
            text = "发票号",
            length = "200",
            not_null = false,
            default_value = "",
            comment = ""
    )
    private String invoiceNo;




    // creator ,在父类中处理


    // gmt_create ,在父类中处理


    // modifier ,在父类中处理


    // gmt_modified ,在父类中处理

}
